草庐IT

leetcode 2744

全部标签

leetcode 48. Rotate Image 旋转图像(Medium)

一、题目大意标签:数组https://leetcode.cn/problems/rotate-image给定一个n × n的二维矩阵 matrix表示一个图像。请你将图像顺时针旋转90度。你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]示例2:输入:matrix=[[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]输出:[[15,13,2,5],[14,3,4,1],[12,

leetcode 448. Find All Numbers Disappeared in an Array 找到所有数组中消失的数字(简单)

一、题目大意标签:数组https://leetcode.cn/problems/find-all-numbers-disappeared-in-an-array给你一个含n个整数的数组nums,其中nums[i]在区间[1,n]内。请你找出所有在[1,n]范围内但没有出现在nums中的数字,并以数组的形式返回结果。示例1:输入:nums=[4,3,2,7,8,2,3,1]输出:[5,6]示例2:输入:nums=[1,1]输出:[2]提示:n==nums.length11进阶:你能在不使用额外空间且时间复杂度为O(n)的情况下解决这个问题吗?你可以假定返回的数组不算在额外空间内。二、解题思路把所

leetcode 20. Valid Parentheses 有效的括号(中等)

一、题目大意标签:栈和队列https://leetcode.cn/problems/valid-parentheses给定一个只包括'(',')','{','}','[',']' 的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例1:输入:s="()"输出:true示例 2:输入:s="()[]{}"输出:true示例 3:输入:s="(]"输出:false示例 4:输入:s="([)]"输出:false示例 5:输入:s="{[]}"输出:true提示:1s仅由括号'()[]{}'组成二、解题思路思路:括号匹配是典型的使用栈来

leetcode 155. Min Stack最小栈(中等)

一、题目大意标签:栈和队列https://leetcode.cn/problems/min-stack设计一个支持push,pop,top操作,并能在常数时间内检索到最小元素的栈。实现MinStack类:MinStack()//初始化堆栈对象。voidpush(intval)//将元素val推入堆栈。voidpop()//删除堆栈顶部的元素。inttop()//获取堆栈顶部的元素。intgetMin()//获取堆栈中的最小元素。示例1:输入:["MinStack","push","push","push","getMin","pop","top","getMin"][[],[-2],[0],[

leetcode 232. Implement Queue using Stacks 用栈实现队列(简单)

一、题目大意标签:栈和队列https://leetcode.cn/problems/implement-queue-using-stacks请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现MyQueue类:voidpush(intx)将元素x推到队列的末尾intpop()从队列的开头移除并返回元素intpeek()返回队列开头的元素booleanempty()如果队列为空,返回true;否则,返回false说明:你只能使用标准的栈操作——也就是只有 pushtotop, peek/popfromtop, size,和 isem

LeetCode最长快乐字符串使用JavaScript解算法

有人相爱,有人夜里开车看海,我是leetcode第一题都做不出来题目如果字符串中不含有任何'aaa','bbb'或'ccc'这样的字符串作为子串,那么该字符串就是一个「快乐字符串」。给你三个整数a,b,c,请你返回任意一个满足下列全部条件的字符串s:s是一个尽可能长的快乐字符串。s中最多有a个字母'a'、b 个字母'b'、c个字母'c'。s中只含有'a'、'b'、'c'三种字母。如果不存在这样的字符串s,请返回一个空字符串""。输入:a=1,b=1,c=7输出:"ccaccbcc"解释:"ccbccacc"也是一种正确答案。快乐字符串中不含有三个连续相同的字母。为了找到最长的字符串,我们可以使

leetcode 769. Max Chunks To Make Sorted 最多能完成排序的块(中等)

一、题目大意标签:数组https://leetcode.cn/problems/max-chunks-to-make-sorted给定一个长度为n的整数数组arr,它表示在[0,n-1]范围内的整数的排列。我们将arr分割成若干块(即分区),并对每个块单独排序。将它们连接起来后,使得连接的结果和按升序排序后的原数组相同。返回数组能分成的最多块数量。示例1:输入:arr=[4,3,2,1,0]输出:1解释:将数组分成2块或者更多块,都无法得到所需的结果。例如,分成[4,3],[2,1,0]的结果是[3,4,0,1,2],这不是有序的数组。示例2:输入:arr=[1,0,2,3,4]输出:4解释:

leetcode 240. Search a 2D Matrix II 搜索二维矩阵 II(中等)

一、题目大意标签:数组https://leetcode.cn/problems/search-a-2d-matrix-ii编写一个高效的算法来搜索 m x n 矩阵matrix中的一个目标值target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]],target=5输出:true示例2:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,

leetcode 48. Rotate Image 旋转图像(Medium)

一、题目大意标签:数组https://leetcode.cn/problems/rotate-image给定一个n × n的二维矩阵 matrix表示一个图像。请你将图像顺时针旋转90度。你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]示例2:输入:matrix=[[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]输出:[[15,13,2,5],[14,3,4,1],[12,

leetcode 448. Find All Numbers Disappeared in an Array 找到所有数组中消失的数字(简单)

一、题目大意标签:数组https://leetcode.cn/problems/find-all-numbers-disappeared-in-an-array给你一个含n个整数的数组nums,其中nums[i]在区间[1,n]内。请你找出所有在[1,n]范围内但没有出现在nums中的数字,并以数组的形式返回结果。示例1:输入:nums=[4,3,2,7,8,2,3,1]输出:[5,6]示例2:输入:nums=[1,1]输出:[2]提示:n==nums.length11进阶:你能在不使用额外空间且时间复杂度为O(n)的情况下解决这个问题吗?你可以假定返回的数组不算在额外空间内。二、解题思路把所